<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title></title>
</head>
<body>
	<script>
		//查询子串首次出现的位置，如：原串abccbaxzabc 子串为axz 结果为5
		var str = 'abccbaxzab';
		var subStr = 'axz';



		// 1. 
		console.log(str.indexOf(subStr));	//5



		// 2.
		function getIndex(str, sub) {
			for (var i = 0; i <= str.length - sub.length; i++) {
				//这个循环走的是原串，每次循环右移一位，然后和子串逐位比较
				for (var j = 0; j < sub.length; j++) {
					//这个循环走的是子串，和原串的不同子串比较
					if (sub[j] != str[i + j]) {
						//如果这个条件成立说明原串的子串和sub不完全一致
						break;
					}

					if (j == sub.length - 1) {
						//这个条件成立，说明现在子串的所有字符都在原串里找到了，返回第一个字符在原串里的索引
						return i;
					}
				}
			}
			return -1; // 找不到返回-1
		}
		console.log(getIndex(str, subStr));	//5




		// 3.
		function getIndex(str, sub) {
			var start = 0;
			var end = str.length - sub.length;
			while (start <= end) {
				if (str.slice(start, sub.length + start) == sub) {
					return start;
				}
				start++;
			}
			return -1;
		}
		console.log(getIndex(str, subStr));	//5
	</script>
</body>
</html>